package com.lanyam.travel.base.service;

import java.util.List;
import java.util.Map;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lanyam.travel.base.entity.Product;
import com.lanyam.travel.base.entity.ScenicHotel;
import com.lanyam.travel.base.entity.vo.ScenicHotelVo;


public interface IScenicHotelService {
	 List<ScenicHotel> getAllScenicHotel();

	void deleteById(String productId);

	void update(ScenicHotel scenicHotel);
	/**
	 *	添加景点酒店
	 * @param scenicHotel
	 */
	void addScenic(ScenicHotel scenicHotel);

	ScenicHotel queryScenicById(String id);

	Page<ScenicHotel> queryScenicListPage(int page, int pageSize, Map<String, Object> reqMap);

	List<ScenicHotel> getScenicByMap(Map<String, Object> reqMap);

	List<ScenicHotel> batchQueryScenics(List<String> scenicIds);

	ScenicHotel getScenicById(String scenicId);

	Page<ScenicHotel> queryScenicPage(int page, int pageSize, Map<String, String> reqMap);

	List<? extends Product> selectList(QueryWrapper<ScenicHotel> scenicWrapper);
	/**
	 * 按关键字搜索
	 * @param key
	 * @return
	 */
	List<ScenicHotel> searchByKey(String key);
	/**
	 * 获取所有酒店
	 * @return
	 */
	List<ScenicHotel> getAllHotels();
	/**
	 * 获取所有景区
	 * @return
	 */
	List<ScenicHotel> getAllScenic();
	/**
	 * 获取供应商下的商品
	 * @param supplierId
	 * @return
	 */
	List<ScenicHotel> getProductBySupplier(String supplierId);
	/**
	 * 获取供应商下指定类型的产品
	 * @param supplierId
	 * @param productType
	 * @return
	 */
	List<ScenicHotel> getProductBySupplierAndType(String supplierId, int productType);
}
